package cn.ee.dfs.wx.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 微信用户表 Entity
 *
 * @author TWJ
 * @date 2023-07-29 12:23:31
 */
@Data
@TableName("t_wxuser")
public class WxUser implements Serializable {
    // 用户状态：有效
    public static final String STATUS_VALID = "1";
    // 用户状态：锁定
    public static final String STATUS_LOCK = "0";

    public WxUser() {
    }

    public WxUser(String openId) {
        this.openId = openId;
    }


    /**
     * 用户ID
     */
    @TableId(value = "USER_ID", type = IdType.AUTO)
    private Long userId;

    /**
     * 用户名
     */
    @TableField("USERNAME")
    private String username;

    /**
     * 密码
     */
    @TableField("PASSWORD")
    private String password;

    /**
     * 用户昵称
     */
    @TableField("NICKNAME")
    private String nickname;

    /**
     * 头像
     */
    @TableField("AVATAR_URL")
    private String avatarUrl;

    /**
     * 等级
     */
    @TableField("USER_LEVEL")
    private String userLevel;

    /**
     * openID
     */
    @TableField("OPEN_ID")
    private String openId;

    /**
     * 联系电话
     */
    @TableField("PHONE")
    private String phone;

    /**
     * 手机号码-无区号
     */
    @TableField("PURE_PHONE")
    private String purePhone;

    /**
     * sessionKey 微信登录
     */
    @TableField("SESSION_KEY")
    private String sessionKey;

    /**
     * 邮箱
     */
    @TableField("EMAIL")
    private String email;

    /**
     * 状态 0锁定 1有效
     */
    @TableField("STATUS")
    private String status;

    /**
     * 创建时间
     */
    @TableField("CREATE_TIME")
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField("MODIFY_TIME")
    private Date modifyTime;

    /**
     * 最近访问时间
     */
    @TableField("LAST_LOGIN_TIME")
    private Date lastLoginTime;

    /**
     * 性别 0男 1女 2保密
     */
    @TableField("SSEX")
    private String ssex;

    /**
     * 是否开启tab，0关闭 1开启
     */
    @TableField("IS_TAB")
    private String isTab;

    /**
     * 主题
     */
    @TableField("THEME")
    private String theme;

    /**
     * 描述
     */
    @TableField("DESCRIPTION")
    private String description;

}